Звіт до лабораторної роботи №4

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
УІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Операційні системи

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Кафедра ЗІ / Звіт до лабораторної роботи №4 З КУРСУ «ОПЕРАЦІЙНІ СИСТЕМИ» Варіант 10 Мета роботи ознайомлення з поняттям багатопотоковості в сучасних операційних системах, отримання практичних навичок створення багато потокових застосувань в середовищі Visual Studio C#. Завдання Для вивчення основних можливостей службового застосування "Редактор Реєстру" виконати наступне. Побудувати алгоритм програми, яка вирішує завдання оптимізації виконання певних операцій над матрицями з використанням багатопотоковості. Завдання наведені в таблиці відповідно до варіанту. Використовуючи засоби Visual Studio (C#, C++, …) створіть програму, що вирішує дане завдання (в консольному чи WinForms режимі). № вар. Кількість потоків Завдання  10 3 Сума 2-х матриць (3х3).   Код програми using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; namespace lab4 { class ThreadClass { int[,] a, b, c; int i, j, k, x1, y1, x2, y2, kil; public ThreadClass() { k=3; a = b = c = new int[k, k]; a[0, 0] = 1; a[0, 1] = 2; a[0, 2] = 3; a[1, 0] = 1; a[1, 1] = 2; a[1, 2] = 3; a[2, 0] = 1; a[2, 1] = 2; a[2, 2] = 3; b[0, 0] = 6; b[0, 1] = 5; b[0, 2] = 4; b[1, 0] = 6; b[1, 1] = 5; b[1, 2] = 4; b[2, 0] = 6; b[2, 1] = 5; b[2, 2] = 4; kil = 0; x1 = y1 = 0; x2 = y2 = k - 1; } public void writestring1() { while (kil<k*k) { kil++; c[x1, y1] = a[x1, y1] + b[x1, y1]; Console.WriteLine("1. c[{0},{1}]={2}", x1, y1, c[x1, y1]); y1++; if (y1 == k) { y1 = 0; x1++; } Thread.Sleep(1000); } } public void writestring2() { while (kil < k * k) { kil++; c[x2, y2] = a[x2, y2] + b[x2, y2]; Console.WriteLine("2. c[{0},{1}]={2}", x2, y2, c[x2, y2]); y2--; if (y2 == -1) { y2 = k-1; x2--; } Thread.Sleep(1000); } } public void writestring3() { Console.Write("3. "); if (kil % 2 == 0) writestring1(); else writestring2(); } } class Program { static void Main(string[] args) { ThreadClass tc = new ThreadClass(); Thread firstthread = new Thread(new ThreadStart(tc.writestring1)); Thread secondthread = new Thread(new ThreadStart(tc.writestring2)); Thread thirdthread = new Thread(new ThreadStart(tc.writestring3)); firstthread.Start(); secondthread.Start(); thirdthread.Start(); } } } Результати виконання 1. c[0,0]=12 2. c[2,2]=8 3. 1. c[0,1]=10 1. c[0,2]=8 2. c[2,1]=10 1. c[1,0]=12 1. c[1,1]=10 2. c[2,0]=12 1. c[1,2]=8 Висновок Під час лабораторної роботи №4 я ознайомився з поняттям багатопотоковості в сучасних операційних системах, отримав практичні навичи створення багатопотокових застосувань в середовищі Visual Studio C#.
Антиботан аватар за замовчуванням

11.06.2013 15:06

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини